package com.pawernode.service;

import org.springframework.amqp.core.AmqpTemplate;
import org.springframework.amqp.core.Message;
import org.springframework.amqp.core.MessageBuilder;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;

/**
 * 消息服务类，负责发送消息到RabbitMQ
 */
@Service
public class MessageService {
    /**
     * 注入AMQP模板，用于发送消息
     */
    @Resource
    private AmqpTemplate amqpTemplate;

    /**
     * 发送消息到RabbitMQ
     * 本方法创建一个包含"hello rabbitmq"消息体的消息，
     * 并将其发送到名为"exchange-topic"的交换机， routing key为"lazy.orange.rabbit"
     */
    public void sendMsg(){
        // 创建消息，内容为"hello rabbitmq"
        Message message = MessageBuilder.withBody("hello rabbitmq".getBytes()).build();
        // 发送消息到指定的交换机和routing key
        amqpTemplate.convertAndSend("exchange-topic","lazy.orange.rabbit",message);
    }
}
